package main

import "fmt"

func main() {
	demo1()
}

func demo1() {
	// 定义结构体
	type author struct {
		name string
		age  int
		memo string
	}

	// new创建结构体
	// 也可以合并写为 xiaoming := new(author)
	// 也可使用 var xiaoming author 的方式来创建
	var xiaoming *author   // 声明一个指向author结构的指针
	xiaoming = new(author) // 开辟author结构内存，并将指针指向它

	// 结构体字段赋值
	xiaoming.name = "小明"
	xiaoming.age = 20
	xiaoming.memo = "简单说明"

	fmt.Println(xiaoming)

	// 递归结构体
	type Node struct {
		pr   *Node
		data float64
		su   *Node
	}

}
